'use strict'

/**
 * 
 * 因为此文件是在h5目录中，所以只对/h5分组生效。
 * 
 * 这种方式属于比较直观的形式，通过配置以及目录结构就体现出中间件的执行逻辑。
 * 
 * 在titbit-loader v21.3.0版本开始，支持middleware属性指向已经初始化好的中间件，
 * 这带来了很多方便，对于一些npm安装的扩展可以直接初始化后通过middleware传递。
 * 
 * 有middleware属性并且其类型是async声明的函数则titbit-loader不会再去加载name指定的中间件模块。
 * 
 */

let mt = async (c, next) => {
  console.log(`h5 running ${(new Date()).toLocaleString()}`)
  await next()
}

module.exports = [
  {
    //开启缓存中间件，通过设置Cache-Control消息头实现。
    name : 'cache-control',

    method : ['GET', 'OPTIONS']
  },
  
  {
    //有此属性则不需要name属性。
    middleware : mt
  }
]
